cc = gcc 
CFLAGS = -Wall -g

src = $(wildcard ./*.c) #获取当前目录下的所有C源文件

targetsc = $(patsubst %.c, %, $(src)) #利用模式匹配将变量名逐个截断成指定形式

objc = $(patsubst %.c, %.o, $(src)) #所有的依赖文件列表, 使用空格分隔

ifeq ($(VERBOSE),)
SILENCE=@echo "building: "$@ ;
else
SILENCE=
endif

ifeq ($(findstring .c, $(src)), .c)
all:$(targetsc)
$(targetsc):%:%.o
	$(SILENCE) $(cc)  $(CFLAGS) $< -o $@
$(objc):%.o:%.c
	$(SILENCE) $(cc) $(CPPFLAGS) -c $<
endif


clean:
	rm -rf $(objc) $(objcpp)
	rm -rf $(patsubst %.c, %, $(src))


.PHONY : clean all
